package com.woniushop.service;

import java.util.List;

import com.woniushop.entity.OrderForm;
import com.woniushop.entity.PageBean;

/**
 * 订单的业务逻辑接口
 * 
 * @author 崔新雄
 *
 */
public interface OrderFormService {

	/**
	 * 为用户创建一个购物车订单
	 * 
	 * @return
	 */
	String creatCart(Integer uid);

	/**
	 * 根据订单号返回订单id
	 * 
	 * @param ono
	 * @return
	 */
	Integer getOidByOno(String ono);

	/**
	 * 根据用户id生成一个已确认未支付的订单，并返回
	 * 
	 * @param uid
	 * @return
	 */
	OrderForm addNewOrder(Integer uid);

	/**
	 * 删除订单
	 * 
	 * @param oid
	 */
	void del(Integer oid);

	/**
	 * 查询所有有效订单
	 * 
	 * @param pageBean
	 * @param orderForm
	 * @return
	 */
	List<OrderForm> findValidByPage(PageBean pageBean, OrderForm orderForm);

	/**
	 * 根据订单id返回订单
	 * 
	 * @param oid
	 * @return
	 */
	OrderForm findOne(Integer oid);

	/**
	 * 确认收货
	 * 
	 * @param oid
	 */
	void receipt(Integer oid);

	/**
	 * 支付
	 * 
	 * @param orderForm
	 */
	void pay(OrderForm orderForm);

	/**
	 * 后台发货
	 * 
	 * @param oid
	 */
	void deliver(Integer oid);

}
